package cn.lizemin.Iterator.origin.entity;

/**
 * @author lzm
 * @version 1.0
 * @description: 行车记录仪
 * @date 2022/5/4 11:19
 */
public class DrivingRecorder {

    //当前记录位置
    private Integer index = -1 ;

    //假设只能存储10条记录
    private String[] records = new String[10];

    /**
     * 添加视频,
     */
    public void appendRecords(String record) {
        //如果当前索引为9，说明存满了，覆盖最开始的视频
        if (index == 9) {
            index = 0;//为了节省空间，这里使用循环数组
        } else {
            //正常追加
            index += 1;
        }
        records[index] = record;
    }

    /**
     * 查看记录
     */
    public void displayRecords() {
        for (int i = 0; i < records.length; i++) {
            System.out.println(i + ":" + records[i]);
        }

    }

    /**
     * 按照日期顺序查看
     *
     * 通过今天的这段代码学习，
     * 让我学到了当看不懂别人的代码时，
     * 可以用自己的方式将别人的写法转化成自己可以看懂的写法
     */
    public void displayByOrder() {
        int i = index;
        //视频数量
        int loopCount = 0;

        for (; loopCount < 10; ) {
            System.out.println(records[i]);
            if (i == 0) {
                i = 9;
            } else {
                i = i - 1;
            }
            loopCount++;
        }

    }

}
